package com.admin.req.system;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 菜单更新
 * 
 * @author ZY
 * @date 2018/10/18
 */
@Data
@ApiModel("UpdateMenuReq(菜单更新)")
public class UpdateMenuReq {

    @ApiModelProperty(value = "菜单id", required = true)
    private Long menuId;

    @ApiModelProperty(value = "父菜单ID，一级菜单为0", required = true)
    private Long parentId;

    @ApiModelProperty(value = "菜单名称", required = true)
    private String name;

    @ApiModelProperty(value = "授权(多个用逗号分隔，如：user:list,user:create)", required = true)
    private String perms;

    @ApiModelProperty(value = "类型 0：目录 1：菜单 2：按钮", required = true)
    private Integer type;

    /**
     * 省
     */
    private Integer province;

    /**
     * 市
     */
    private Integer city;

    /**
     * 区县
     */
    private Integer area;

    public Long getMenuId() {
        return menuId;
    }

    public void setMenuId(Long menuId) {
        this.menuId = menuId;
    }

    /**
     * 获取父菜单ID，一级菜单为0
     * 
     * @return parent_id 父菜单ID，一级菜单为0
     */
    public Long getParentId() {
        return parentId;
    }

    /**
     * 设置父菜单ID，一级菜单为0
     * 
     * @param parentId 父菜单ID，一级菜单为0
     */
    public void setParentId(Long parentId) {
        this.parentId = parentId;
    }

    /**
     * 获取菜单名称
     * 
     * @return name 菜单名称
     */
    public String getName() {
        return name;
    }

    /**
     * 设置菜单名称
     * 
     * @param name 菜单名称
     */
    public void setName(String name) {
        this.name = name == null ? null : name.trim();
    }

    /**
     * 获取授权(多个用逗号分隔，如：user:list,user:create)
     * 
     * @return perms 授权(多个用逗号分隔，如：user:list,user:create)
     */
    public String getPerms() {
        return perms;
    }

    /**
     * 设置授权(多个用逗号分隔，如：user:list,user:create)
     * 
     * @param perms 授权(多个用逗号分隔，如：user:list,user:create)
     */
    public void setPerms(String perms) {
        this.perms = perms == null ? null : perms.trim();
    }

    /**
     * 获取类型 0：目录 1：菜单 2：按钮
     * 
     * @return type 类型 0：目录 1：菜单 2：按钮
     */
    public Integer getType() {
        return type;
    }

    /**
     * 设置类型 0：目录 1：菜单 2：按钮
     * 
     * @param type 类型 0：目录 1：菜单 2：按钮
     */
    public void setType(Integer type) {
        this.type = type;
    }
}